/**
 * jims
 */
package com.jims.master.modules.doctor.medicalService.entity;

import com.google.common.collect.Lists;
import com.jims.master.common.persistence.DataEntity;
import com.jims.master.modules.base.medicalService.entity.SDefaultServe;
import com.jims.master.modules.base.user.entity.MasterBaseinfo;
import com.jims.master.modules.base.user.entity.MasterDoctorinfo;
import org.hibernate.validator.constraints.Length;

import java.util.List;

/**
 * 医生提供的服务表Entity
 * @author xueyx
 * @version 2017-05-03
 */
public class SDoctorServe extends DataEntity<SDoctorServe> {
	
	private static final long serialVersionUID = 1L;
	private String defaultId;    //系统服务ID
	private String doctorId;    //医生UserID
	private String title;		// 标题
	private String introduce;		// 简介
	private Double price;		// 原价格
	private String discount;		// 折扣
	private Double cost;		// 实际价格
	private String serveContent;		// 内容
	private String picUrl;		// 图片地址
	private String areaDetailed;		// 服务详细地点
	private String serveType;		// 服务方式
	private String timeType;		// 服务时间
	private String serveState;		// 0:保存1:发布
	private String planId;
	private String orderNo;     //排序
	private String type;
	private String cycle;//家庭医生服务周期

	public String getCycle() {
		return cycle;
	}

	public void setCycle(String cycle) {
		this.cycle = cycle;
	}

	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}

	private MasterDoctorinfo masterDoctorinfo;     //医生信息
	private List<SDoctorPlan> sDoctorPlan;     //医生日程信息

	public List<SDoctorPlan> getsDoctorPlan() {
		return sDoctorPlan;
	}

	public void setsDoctorPlan(List<SDoctorPlan> sDoctorPlan) {
		this.sDoctorPlan = sDoctorPlan;
	}

	public MasterDoctorinfo getMasterDoctorinfo() {
		return masterDoctorinfo;
	}

	public void setMasterDoctorinfo(MasterDoctorinfo masterDoctorinfo) {
		this.masterDoctorinfo = masterDoctorinfo;
	}


	public String getSignNum() {
		return signNum;
	}

	public void setSignNum(String signNum) {
		this.signNum = signNum;
	}

	private String signNum;     //签约数

	public SDefaultServe getsDefaultServe() {
		return sDefaultServe;
	}

	public void setsDefaultServe(SDefaultServe sDefaultServe) {
		this.sDefaultServe = sDefaultServe;
	}

	private SDefaultServe sDefaultServe;     //系统服务

	public String getOrderNo() {
		return orderNo;
	}

	public void setOrderNo(String orderNo) {
		this.orderNo = orderNo;
	}

	private List<MasterBaseinfo> sDoctorList;
	private String numPerson;//签约服务患者数

	private int startPage;
	private String conntFlag;

	public int getStartPage() {
		return startPage;
	}

	public void setStartPage(int startPage) {
		this.startPage = startPage;
	}

	public String getConntFlag() {
		return conntFlag;
	}

	public void setConntFlag(String conntFlag) {
		this.conntFlag = conntFlag;
	}
	/*private MasterBaseinfo masterBaseinfo;

	public MasterBaseinfo getMasterBaseinfo() {
		return masterBaseinfo;
	}

	public void setMasterBaseinfo(MasterBaseinfo masterBaseinfo) {
		this.masterBaseinfo = masterBaseinfo;
	}*/

	public String getNumPerson() {
		return numPerson;
	}

	public void setNumPerson(String numPerson) {
		this.numPerson = numPerson;
	}

	public List<MasterBaseinfo> getsDoctorList() {
		return sDoctorList;
	}

	public void setsDoctorList(List<MasterBaseinfo> sDoctorList) {
		this.sDoctorList = sDoctorList;
	}

	public SDoctorServe() {
		super();
	}

	public SDoctorServe(String id){
		super(id);
	}

	@Length(min=0, max=200, message="标题长度必须介于 0 和 200 之间")
	public String getTitle() {
		return title;
	}

	public void setTitle(String title) {
		this.title = title;
	}
	
	@Length(min=0, max=600, message="简介长度必须介于 0 和 600 之间")
	public String getIntroduce() {
		return introduce;
	}

	public void setIntroduce(String introduce) {
		this.introduce = introduce;
	}
	
	public Double getPrice() {
		return price;
	}

	public void setPrice(Double price) {
		this.price = price;
	}
	
	@Length(min=0, max=2, message="折扣长度必须介于 0 和 2 之间")
	public String getDiscount() {
		return discount;
	}

	public void setDiscount(String discount) {
		this.discount = discount;
	}
	
	public Double getCost() {
		return cost;
	}

	public void setCost(Double cost) {
		this.cost = cost;
	}
	
	public String getServeContent() {
		return serveContent;
	}

	public void setServeContent(String serveContent) {
		this.serveContent = serveContent;
	}
	
	@Length(min=0, max=600, message="图片地址长度必须介于 0 和 600 之间")
	public String getPicUrl() {
		return picUrl;
	}

	public void setPicUrl(String picUrl) {
		this.picUrl = picUrl;
	}
	
	@Length(min=0, max=500, message="服务详细地点长度必须介于 0 和 500 之间")
	public String getAreaDetailed() {
		return areaDetailed;
	}

	public void setAreaDetailed(String areaDetailed) {
		this.areaDetailed = areaDetailed;
	}
	
	@Length(min=0, max=1, message="服务方式长度必须介于 0 和 1 之间")
	public String getServeType() {
		return serveType;
	}

	public void setServeType(String serveType) {
		this.serveType = serveType;
	}
	
	@Length(min=0, max=20, message="服务时间长度必须介于 0 和 20 之间")
	public String getTimeType() {
		return timeType;
	}

	public void setTimeType(String timeType) {
		this.timeType = timeType;
	}
	
	@Length(min=0, max=1, message="0:保存1:发布长度必须介于 0 和 1 之间")
	public String getServeState() {
		return serveState;
	}

	public void setServeState(String serveState) {
		this.serveState = serveState;
	}

	private List<SDefaultServe> serves = Lists.newArrayList();

	public List<SDefaultServe> getServes() {
		return serves;
	}

	public String getPlanId() {
		return planId;
	}

	public void setPlanId(String planId) {
		this.planId = planId;
	}

	public void setServes(List<SDefaultServe> serves) {
		this.serves = serves;
	}

	public String getDoctorId() {
		return doctorId;
	}

	public void setDoctorId(String doctorId) {
		this.doctorId = doctorId;
	}

	public String getDefaultId() {
		return defaultId;
	}

	public void setDefaultId(String defaultId) {
		this.defaultId = defaultId;
	}
}